/**
 * 对象形式的插件
 */
import Hello from "./components/Hello.vue";

const pluginA = {
  install(Vue) {
    console.log("pluginA install", Vue);

    // 通过 Vue.component() 注册全局组件
    Vue.component("Hello", Hello);
    // 通过 Vue.filter() 注册全局过滤器
    Vue.filter("up", function (value) {
      if (!value) return "";
      value = value.toString();
      return value.toUpperCase();
    });
    // 通过 Vue.directive() 注册全局指令
    Vue.directive("hide", function (el, binging) {
      // 判断 binging.value 是否为 true
      if (binging.value) {
        el.style.display = "none";
      } else {
        el.style.display = "block";
      }
    });
    // 通过 Vue.mixin() 注册全局混入
    // 通过 Vue.prototype.xxx 挂载全局的属性与方法
    Vue.prototype.$message = function () {
      alert("hello ya ");
    };
  },
};

// 导出 pluginA
export default pluginA;
